# workout_app/management/commands/create_exercises.py
from django.core.management.base import BaseCommand
from report.models import Exercise


# 添加项目路径到Python路径

# 在Django shell中运行或创建数据迁移文件
# python manage.py shell
# 然后复制以下代码执行



class Command(BaseCommand):
    help = '创建基础健身动作数据'

    def handle(self, *args, **options):
        exercises_data = [
            {
                'name': '哑铃卧推',
                'description': '胸部基础力量训练，使用哑铃可以改善肌肉不平衡',
                'difficulty': 'intermediate',
                'target_muscles': '胸大肌,三角肌前束,肱三头肌',
                'estimated_duration': 140
            },
            {
                'name': '杠铃硬拉',
                'description': '全身复合训练动作，提升整体力量和爆发力',
                'difficulty': 'advanced',
                'target_muscles': '下背部,臀大肌,腿后侧,核心',
                'estimated_duration': 180
            },
            {
                'name': '悬垂举腿',
                'description': '高级核心训练，主要锻炼下腹部和髋屈肌',
                'difficulty': 'advanced',
                'target_muscles': '腹直肌下部,髋屈肌,前臂',
                'estimated_duration': 160
            },
            {
                'name': '哑铃飞鸟',
                'description': '胸部孤立训练，增强胸肌中缝和外侧',
                'difficulty': 'intermediate',
                'target_muscles': '胸大肌,三角肌前束',
                'estimated_duration': 130
            },
            {
                'name': '杠铃弯举',
                'description': '二头肌基础力量训练，使用杠铃可以举起更大重量',
                'difficulty': 'intermediate',
                'target_muscles': '肱二头肌,前臂',
                'estimated_duration': 110
            },
            {
                'name': '坐姿划船',
                'description': '背部厚度训练，主要锻炼中背部肌群',
                'difficulty': 'intermediate',
                'target_muscles': '背阔肌,菱形肌,二头肌',
                'estimated_duration': 150
            },
            {
                'name': '腿举',
                'description': '腿部力量训练，减少腰部压力，适合初学者',
                'difficulty': 'beginner',
                'target_muscles': '股四头肌,臀大肌',
                'estimated_duration': 170
            },
            {
                'name': '哑铃侧平举',
                'description': '肩部中束孤立训练，打造宽阔肩膀',
                'difficulty': 'intermediate',
                'target_muscles': '三角肌中束',
                'estimated_duration': 120
            },
            {
                'name': '杠铃推举',
                'description': '肩部基础力量训练，提升上肢推力',
                'difficulty': 'intermediate',
                'target_muscles': '三角肌,三头肌,上胸',
                'estimated_duration': 140
            },
            {
                'name': '器械夹胸',
                'description': '胸部孤立训练，感受胸肌挤压感',
                'difficulty': 'beginner',
                'target_muscles': '胸大肌,三角肌前束',
                'estimated_duration': 130
            },
            {
                'name': '杠铃深蹲',
                'description': '下肢力量之王，全面提升腿部力量和肌肉量',
                'difficulty': 'advanced',
                'target_muscles': '股四头肌,臀大肌,核心肌群',
                'estimated_duration': 200
            },
            {
                'name': '哑铃颈后臂屈伸',
                'description': '三头肌孤立训练，塑造手臂后侧线条',
                'difficulty': 'intermediate',
                'target_muscles': '肱三头肌',
                'estimated_duration': 100
            },
            {
                'name': '器械腿屈伸',
                'description': '股四头肌孤立训练，塑造大腿前侧线条',
                'difficulty': 'beginner',
                'target_muscles': '股四头肌',
                'estimated_duration': 110
            },
            {
                'name': '器械腿弯举',
                'description': '腿后侧孤立训练，平衡腿部发展',
                'difficulty': 'beginner',
                'target_muscles': '腿后侧肌群',
                'estimated_duration': 110
            },
            {
                'name': '哑铃前平举',
                'description': '三角肌前束孤立训练，提升肩部前侧',
                'difficulty': 'intermediate',
                'target_muscles': '三角肌前束',
                'estimated_duration': 100
            },
            {
                'name': '器械下拉',
                'description': '背部宽度训练，打造倒三角体型',
                'difficulty': 'beginner',
                'target_muscles': '背阔肌,二头肌',
                'estimated_duration': 140
            },
            {
                'name': '哑铃耸肩',
                'description': '斜方肌上部训练，塑造强壮颈部线条',
                'difficulty': 'beginner',
                'target_muscles': '斜方肌上部',
                'estimated_duration': 90
            },
            {
                'name': '器械推胸',
                'description': '胸部基础力量训练，适合初学者掌握动作模式',
                'difficulty': 'beginner',
                'target_muscles': '胸大肌,三角肌前束,三头肌',
                'estimated_duration': 150
            },
            {
                'name': '哑铃箭步走',
                'description': '动态下肢训练，提升平衡和协调能力',
                'difficulty': 'intermediate',
                'target_muscles': '股四头肌,臀大肌,核心',
                'estimated_duration': 180
            },
            {
                'name': '器械肩推',
                'description': '肩部基础训练，使用器械更安全稳定',
                'difficulty': 'beginner',
                'target_muscles': '三角肌,三头肌',
                'estimated_duration': 140
            },
            {
                'name': '哑铃俯身飞鸟',
                'description': '三角肌后束和上背部训练，改善圆肩驼背',
                'difficulty': 'intermediate',
                'target_muscles': '三角肌后束,菱形肌',
                'estimated_duration': 130
            },
            {
                'name': '器械二头弯举',
                'description': '二头肌孤立训练，使用器械动作更标准',
                'difficulty': 'beginner',
                'target_muscles': '肱二头肌',
                'estimated_duration': 100
            },
            {
                'name': '器械三头下压',
                'description': '三头肌孤立训练，塑造手臂后侧肌肉',
                'difficulty': 'beginner',
                'target_muscles': '肱三头肌',
                'estimated_duration': 100
            },
            {
                'name': '哑铃交替弯举',
                'description': '二头肌单侧训练，改善肌肉不平衡',
                'difficulty': 'intermediate',
                'target_muscles': '肱二头肌',
                'estimated_duration': 120
            },
            {
                'name': '器械腹部卷曲',
                'description': '腹部孤立训练，减少颈部压力',
                'difficulty': 'beginner',
                'target_muscles': '腹直肌',
                'estimated_duration': 110
            },
            {
                'name': '哑铃过头臂屈伸',
                'description': '三头肌长头训练，全面提升手臂围度',
                'difficulty': 'intermediate',
                'target_muscles': '肱三头肌',
                'estimated_duration': 110
            },
            {
                'name': '器械背部伸展',
                'description': '下背部孤立训练，增强腰部稳定性',
                'difficulty': 'beginner',
                'target_muscles': '竖脊肌,下背部',
                'estimated_duration': 120
            },
            {
                'name': '哑铃罗马尼亚硬拉',
                'description': '腿后侧和臀部训练，提升髋关节铰链能力',
                'difficulty': 'intermediate',
                'target_muscles': '腿后侧,臀大肌,下背部',
                'estimated_duration': 160
            },
            {
                'name': '器械小腿提踵',
                'description': '小腿肌肉训练，塑造完美腿部线条',
                'difficulty': 'beginner',
                'target_muscles': '腓肠肌,比目鱼肌',
                'estimated_duration': 100
            },
            {
                'name': '哑铃旋转弯举',
                'description': '二头肌功能性训练，提升旋转力量',
                'difficulty': 'advanced',
                'target_muscles': '肱二头肌,前臂',
                'estimated_duration': 130
            }
        ]

        created_count = 0
        for data in exercises_data:
            if not Exercise.objects.filter(name=data['name']).exists():
                Exercise.objects.create(**data)
                created_count += 1
                self.stdout.write(
                    self.style.SUCCESS(f"创建动作: {data['name']}")
                )
            else:
                self.stdout.write(
                    self.style.WARNING(f"动作已存在: {data['name']}")
                )

        self.stdout.write(
            self.style.SUCCESS(f"成功创建 {created_count} 个基础动作，当前共有 {Exercise.objects.count()} 个动作")
        )
